home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / lists / mint / l_0399 / 36 < prev    next >
Encoding:
Internet Message Format  |  1994-08-27  |  3.6 KB

  1. From: Julian F. Reschke <julian@GINA.UNI-MUENSTER.DE>
  2. Subject: Re: libraries
  3. Date: Wed, 20 Jan 93 11:27:12 MET DST
  4. In-Reply-To: <9301192316.AA18432@math.uni-muenster.de>; from "Michal Jaegermann" at Jan 19, 93 4:12 pm
  5.  
  6. > > When using Pure, I have:
  7. > > #include <tos.h>
  8. > > DTA *dta = Fgetdta ();
  9. > > With the MiNT include files, I have:
  10. > > #include <osbind.h>
  11. > > _DTA *dta = Fgetdta ();
  12. > > And so on. Yes, I can resolve all that with conditional includes and
  13. > > defines, but I really hate that. That's why I propose to make a fresh
  14. > > start (of course you can continue to use the old header files with
  15. > > old sources).
  16. > Fresh start with what?  I am not sure if we can help it.  There is
  17. > quite a bit of code already around and there is no standard authority
  18. > which could resolve such differences.  Pure C (even as Turbo C) was a
  19. > relative late comer to the scene and they did not pay an attention to
  20. > what was already around (or apparently to ANSI Standard as well) nor
  21. > they really had to.  Well, I rely on your word for it since I did not
  22. > have an opportunity to even look at this compiler not mentioning
  23. > writing some code for it.  And there are also some other compilers
  24. > like Lattice C and Prospero C - not even touching K&R stuff.  How
  25. > about them?
  26.  
  27. A fresh start with TOS header files (I thought that this was clear by now :-).
  28. I don't want to change existing code -- people can continue to use their
  29. old header files. And, btw: when Turbo C came out, it was the first ANSI
  30. compiler that was really usable (that was back in '88). The authority
  31. you are looking for is Eric Smith and the official system documentation.
  32. And, of course, the new specification is useful for all compilers (note
  33. that it's not *really* important that the header files are identical; it's
  34. only important that they define the same things and are found in the same
  35. places).
  36.  
  37. > Besides such differences are not very hard to reconcile even without a
  38. > ton of #ifdefs.  This is the reason that gcc has a header file
  39. > <compiler.h> where you can put neccessary defines there and you can
  40. > even put #ifdef... #include <tos.h> ... #endif in <osbind.h>, or
  41. > vice-versa, when a need will arise and things are nearly transparent.
  42. > For this you need header files for both compilers.  I know that this
  43. > is not an ideal situation but I doubt if we can help it.  Note that
  44. > gcc header files were carefuly written to make such adjustments
  45. > relatively easy.  On the top of it gcc header files alredy have a file
  46. > <tos.h>, and a few other similar, with the following contents:
  47. > /*
  48. >     <tos.h>
  49. >     This header is "Public Domain".
  50. >     (P) 1992 by Markus M. Nick
  51. >     
  52. >     This header makes it easier to compile sources with both PureC/TurboC
  53. >     and GNU-CC.  Now you needn't include different header files any more.
  54. >     
  55. >     Please send your comments and suggestions to:
  56. >         Markus_Nick@mz.maus.de
  57. > */
  58. > #ifndef __TOS__
  59. > #include <osbind.h>
  60. > #define __TOS__
  61. > #endif
  62. > so you should be able to use it instead of <osbind.h> even if the name
  63. > <tos.h> is a bad one (as you know perfectly well your OS does not have
  64. > to be TOS).
  65. >   Regards,
  66. >   Michal
  67. >   ntomczak@vm.ucs.ualberta.ca
  68.  
  69. But that is exactly the thing that I *hate*. I don't want to clutter all
  70. my header files and include directories with nested includes and tons
  71. of defines.
  72.  
  73. Again: I am speaking of a new set of header files. I don't say that the
  74. old header files have to be removed.
  75.  
  76. -- 
  77. ________________ cut here _________________________
  78. Julian F. Reschke, Hensenstr. 142, D-W4400 Muenster
  79.   eMail: julian@math.uni-muenster.de, jr@ms.maus.de
  80. ________ correct me if I'm wrong __________________
  81.